133 research outputs found
Initial Semantics for Reduction Rules
We give an algebraic characterization of the syntax and operational semantics
of a class of simply-typed languages, such as the language PCF: we characterize
simply-typed syntax with variable binding and equipped with reduction rules via
a universal property, namely as the initial object of some category of models.
For this purpose, we employ techniques developed in two previous works: in the
first work we model syntactic translations between languages over different
sets of types as initial morphisms in a category of models. In the second work
we characterize untyped syntax with reduction rules as initial object in a
category of models. In the present work, we combine the techniques used earlier
in order to characterize simply-typed syntax with reduction rules as initial
object in a category. The universal property yields an operator which allows to
specify translations---that are semantically faithful by construction---between
languages over possibly different sets of types.
As an example, we upgrade a translation from PCF to the untyped lambda
calculus, given in previous work, to account for reduction in the source and
target. Specifically, we specify a reduction semantics in the source and target
language through suitable rules. By equipping the untyped lambda calculus with
the structure of a model of PCF, initiality yields a translation from PCF to
the lambda calculus, that is faithful with respect to the reduction semantics
specified by the rules.
This paper is an extended version of an article published in the proceedings
of WoLLIC 2012.Comment: Extended version of arXiv:1206.4547, proves a variant of a result of
PhD thesis arXiv:1206.455
Terminal semantics for codata types in intensional Martin-L\"of type theory
In this work, we study the notions of relative comonad and comodule over a
relative comonad, and use these notions to give a terminal coalgebra semantics
for the coinductive type families of streams and of infinite triangular
matrices, respectively, in intensional Martin-L\"of type theory. Our results
are mechanized in the proof assistant Coq.Comment: 14 pages, ancillary files contain formalized proof in the proof
assistant Coq; v2: 20 pages, title and abstract changed, give a terminal
semantics for streams as well as for matrices, Coq proof files updated
accordingl
Heterogeneous substitution systems revisited
Matthes and Uustalu (TCS 327(1-2):155-174, 2004) presented a categorical
description of substitution systems capable of capturing syntax involving
binding which is independent of whether the syntax is made up from least or
greatest fixed points. We extend this work in two directions: we continue the
analysis by creating more categorical structure, in particular by organizing
substitution systems into a category and studying its properties, and we
develop the proofs of the results of the cited paper and our new ones in
UniMath, a recent library of univalent mathematics formalized in the Coq
theorem prover.Comment: 24 page
Displayed Categories
We introduce and develop the notion of *displayed categories*.
A displayed category over a category C is equivalent to "a category D and
functor F : D --> C", but instead of having a single collection of "objects of
D" with a map to the objects of C, the objects are given as a family indexed by
objects of C, and similarly for the morphisms. This encapsulates a common way
of building categories in practice, by starting with an existing category and
adding extra data/properties to the objects and morphisms.
The interest of this seemingly trivial reformulation is that various
properties of functors are more naturally defined as properties of the
corresponding displayed categories. Grothendieck fibrations, for example, when
defined as certain functors, use equality on objects in their definition. When
defined instead as certain displayed categories, no reference to equality on
objects is required. Moreover, almost all examples of fibrations in nature are,
in fact, categories whose standard construction can be seen as going via
displayed categories.
We therefore propose displayed categories as a basis for the development of
fibrations in the type-theoretic setting, and similarly for various other
notions whose classical definitions involve equality on objects.
Besides giving a conceptual clarification of such issues, displayed
categories also provide a powerful tool in computer formalisation, unifying and
abstracting common constructions and proof techniques of category theory, and
enabling modular reasoning about categories of multi-component structures. As
such, most of the material of this article has been formalised in Coq over the
UniMath library, with the aim of providing a practical library for use in
further developments.Comment: v3: Revised and slightly expanded for publication in LMCS. Theorem
numbering change
Non-wellfounded trees in Homotopy Type Theory
We prove a conjecture about the constructibility of coinductive types - in
the principled form of indexed M-types - in Homotopy Type Theory. The
conjecture says that in the presence of inductive types, coinductive types are
derivable. Indeed, in this work, we construct coinductive types in a subsystem
of Homotopy Type Theory; this subsystem is given by Intensional Martin-L\"of
type theory with natural numbers and Voevodsky's Univalence Axiom. Our results
are mechanized in the computer proof assistant Agda.Comment: 14 pages, to be published in proceedings of TLCA 2015; ancillary
files contain Agda files with formalized proof
High-level signatures and initial semantics
We present a device for specifying and reasoning about syntax for datatypes,
programming languages, and logic calculi. More precisely, we study a notion of
signature for specifying syntactic constructions.
In the spirit of Initial Semantics, we define the syntax generated by a
signature to be the initial object---if it exists---in a suitable category of
models. In our framework, the existence of an associated syntax to a signature
is not automatically guaranteed. We identify, via the notion of presentation of
a signature, a large class of signatures that do generate a syntax.
Our (presentable) signatures subsume classical algebraic signatures (i.e.,
signatures for languages with variable binding, such as the pure lambda
calculus) and extend them to include several other significant examples of
syntactic constructions.
One key feature of our notions of signature, syntax, and presentation is that
they are highly compositional, in the sense that complex examples can be
obtained by assembling simpler ones. Moreover, through the Initial Semantics
approach, our framework provides, beyond the desired algebra of terms, a
well-behaved substitution and the induction and recursion principles associated
to the syntax.
This paper builds upon ideas from a previous attempt by Hirschowitz-Maggesi,
which, in turn, was directly inspired by some earlier work of
Ghani-Uustalu-Hamana and Matthes-Uustalu.
The main results presented in the paper are computer-checked within the
UniMath system.Comment: v2: extended version of the article as published in CSL 2018
(http://dx.doi.org/10.4230/LIPIcs.CSL.2018.4); list of changes given in
Section 1.5 of the paper; v3: small corrections throughout the paper, no
major change
Non-Wellfounded Trees in Homotopy Type Theory
Coinductive data types are used in functional programming to represent infinite data struc-tures. Examples include the ubiquitous data type of streams over a given base type, but also more sophisticated types. From a categorical perspective, coinductive types are characterized by a universal property, which specifies the object with that property uniquely in a suitable sense. More precisely, a coinductive type is specified as the terminal coalgebra of a suitable endofunctor. In this category-theoretic viewpoint, coinductive types are dual to inductive types, which are defined as initial algebras. Inductive, resp. coinductive, types are usually considered in the principled form of the family of W-types, resp. M-types, parametrized by a type A and a dependent type family B over A, that is, a family of types (B(a))a:A. Intuitively, the elements of the coinductive type M(A,B) are trees with nodes labeled by elements of A such that a node labeled by a: A has B(a)-many subtrees, given by a map B(a) → M(A,B); see Figure 1 for an example. The inductive type W(A,B) contains only trees where any path within that tree eventually leads to a leaf, that is, to a node a: A such that B(a) is empty. a, b, c: A B(a) =
Initial Semantics for higher-order typed syntax in Coq
Initial Semantics aims at characterizing the syntax associated to a signature
as the initial object of some category. We present an initial semantics result
for typed higher-order syntax together with its formalization in the Coq proof
assistant. The main theorem was first proved on paper in the second author's
PhD thesis in 2010, and verified formally shortly afterwards. To a simply-typed
binding signature S over a fixed set T of object types we associate a category
called the category of representations of S. We show that this category has an
initial object Sigma(S). From its construction it will be clear that the object
Sigma(S) merits the name abstract syntax associated to S. Our theorem is
implemented and proved correct in the proof assistant Coq through heavy use of
dependent types. The approach through monads gives rise to an implementation of
syntax where both terms and variables are intrinsically typed, i.e. where the
object types are reflected in the meta-level types. This article is to be seen
as a research article rather than about the formalization of a classical
mathematical result. The nature of our theorem - involving lengthy, technical
proofs and complicated algebraic structures - makes it particularly interesting
for formal verification. Our goal is to promote the use of computer theorem
provers as research tools, and, accordingly, a new way of publishing
mathematical results: a parallel description of a theorem and its formalization
should allow the verification of correct transcription of definitions and
statements into the proof assistant, and straightforward but technical proofs
should be well-hidden in a digital library. We argue that Coq's rich type
theory, combined with its various features such as implicit arguments, allows a
particularly readable formalization and is hence well-suited for communicating
mathematics.Comment: Article as published in JFR (cf. Journal ref). Features some more
example
- …